import type { GeneratedEtsLibFile } from "../../types/generated";

export const FILE: GeneratedEtsLibFile = {
  path: 'ets/api/@ohos.net.http.d.ts',
  content: "/*\n * Copyright (c) 2021-2023 Huawei Device Co., Ltd.\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/**\n * @file\n * @kit NetworkKit\n */\nimport type { AsyncCallback, Callback } from './@ohos.base';\nimport type connection from './@ohos.net.connection';\n/**\n * Provides http related APIs.\n * @namespace http\n * @syscap SystemCapability.Communication.NetStack\n * @since 6\n */\n/**\n * Provides http related APIs.\n * @namespace http\n * @syscap SystemCapability.Communication.NetStack\n * @crossplatform\n * @since 10\n */\n/**\n * Provides http related APIs.\n * @namespace http\n * @syscap SystemCapability.Communication.NetStack\n * @crossplatform\n * @atomicservice\n * @since 11\n */\ndeclare namespace http {\n    /**\n     * Http Proxy Configuration Information.\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 10\n     */\n    /**\n     * Http Proxy Configuration Information.\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Http Proxy Configuration Information.\n     * @typedef { connection.HttpProxy }\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 12\n     */\n    type HttpProxy = connection.HttpProxy;\n    /**\n     * Creates an HTTP request task.\n     * @returns { HttpRequest } the HttpRequest of the createHttp.\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 6\n     */\n    /**\n     * Creates an HTTP request task.\n     * @returns { HttpRequest } the HttpRequest of the createHttp.\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Creates an HTTP request task.\n     * @returns { HttpRequest } the HttpRequest of the createHttp.\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    function createHttp(): HttpRequest;\n    /**\n     * Enum for Address Family\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 15\n     */\n    export enum AddressFamily {\n        /**\n         * Default, can use addresses of all IP versions that your system allows.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 15\n         */\n        DEFAULT = 'CURL_IPRESOLVE_WHATEVER',\n        /**\n         * ONLYV4 Uses only IPv4 addresses.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 15\n         */\n        ONLY_V4 = 'CURL_IPRESOLVE_V4',\n        /**\n         * ONLYV6 Uses only IPv6 addresses.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 15\n         */\n        ONLY_V6 = 'CURL_IPRESOLVE_V6'\n    }\n    /**\n     * Specifies the type and value range of the optional parameters in the HTTP request.\n     * @interface HttpRequestOptions\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 6\n     */\n    /**\n     * Specifies the type and value range of the optional parameters in the HTTP request.\n     * @interface HttpRequestOptions\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Specifies the type and value range of the optional parameters in the HTTP request.\n     * @interface HttpRequestOptions\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export interface HttpRequestOptions {\n        /**\n         * Request method,default is GET.\n         * @type {?RequestMethod}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Request method,default is GET.\n         * @type {?RequestMethod}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Request method,default is GET.\n         * @type {?RequestMethod}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        method?: RequestMethod;\n        /**\n         * Additional data of the request.\n         * extraData can be a string or an Object (API 6) or an ArrayBuffer(API 8).\n         * @type {?string | Object | ArrayBuffer}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Additional data of the request.\n         * extraData can be a string or an Object (API 6) or an ArrayBuffer(API 8).\n         * @type {?string | Object | ArrayBuffer}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Additional data of the request.\n         * extraData can be a string or an Object (API 6) or an ArrayBuffer(API 8).\n         * @type { ?(string | Object | ArrayBuffer) }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        extraData?: string | Object | ArrayBuffer;\n        /**\n         * Data type to be returned. If this parameter is set, the system preferentially returns the specified type.\n         * @type {?HttpDataType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Data type to be returned. If this parameter is set, the system preferentially returns the specified type.\n         * @type {?HttpDataType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Data type to be returned. If this parameter is set, the system preferentially returns the specified type.\n         * @type {?HttpDataType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        expectDataType?: HttpDataType;\n        /**\n         * default is true\n         * @type {?boolean}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * default is true\n         * @type {?boolean}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * default is true\n         * @type {?boolean}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        usingCache?: boolean;\n        /**\n         * [1, 1000], default is 1.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * [1, 1000], default is 1.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * [1, 1000], default is 1.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        priority?: number;\n        /**\n         * HTTP request header. default is 'content-type': 'application/json'\n         * @type {?Object}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * HTTP request header. default is 'content-type': 'application/json'\n         * @type {?Object}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * HTTP request header. default is 'content-type': 'application/json'\n         * @type {?Object}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        header?: Object;\n        /**\n         * Read timeout period. The default value is 60,000, in ms.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Read timeout period. The default value is 60,000, in ms.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Read timeout period. The default value is 60,000, in ms.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        readTimeout?: number;\n        /**\n         * Connection timeout interval. The default value is 60,000, in ms.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Connection timeout interval. The default value is 60,000, in ms.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Connection timeout interval. The default value is 60,000, in ms.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        connectTimeout?: number;\n        /**\n         * default is automatically specified by the system.\n         * @type {?HttpProtocol}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * default is automatically specified by the system.\n         * @type {?HttpProtocol}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * default is automatically specified by the system.\n         * @type {?HttpProtocol}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        usingProtocol?: HttpProtocol;\n        /**\n         * If this parameter is set as type of boolean, the system will use default proxy or not use proxy.\n         * If this parameter is set as type of HttpProxy, the system will use the specified HttpProxy.\n         * @type {?boolean | HttpProxy}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * If this parameter is set as type of boolean, the system will use default proxy or not use proxy.\n         * If this parameter is set as type of HttpProxy, the system will use the specified HttpProxy.\n         * @type { ?(boolean | HttpProxy) }\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * If this parameter is set as type of boolean, the system will use default proxy or not use proxy.\n         * If this parameter is set as type of HttpProxy, the system will use the specified HttpProxy.\n         * @type { ?(boolean | HttpProxy) }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 12\n         */\n        usingProxy?: boolean | HttpProxy;\n        /**\n         * If this parameter is set, the system will use ca path specified by user, or else use preset ca by the system.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * If this parameter is set, the system will use ca path specified by user, or else use preset ca by the system.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * If this parameter is set, the system will use ca path specified by user, or else use preset ca by the system.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 12\n         */\n        caPath?: string;\n        /**\n         * Used to set to uploading or downloading the start bytes. The default value is 0.\n         * HTTP standard (RFC 7233 section 3.1) allows servers to ignore range requests.\n         * For HTTP PUT uploads this option should not be used, since it may conflict with other options.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Used to set to uploading or downloading the start bytes. The default value is 0.\n         * HTTP standard (RFC 7233 section 3.1) allows servers to ignore range requests.\n         * For HTTP PUT uploads this option should not be used, since it may conflict with other options.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        resumeFrom?: number;\n        /**\n         * Used to set to uploading or downloading the end bytes. Translate to the end if not set.\n         * HTTP standard (RFC 7233 section 3.1) allows servers to ignore range requests.\n         * For HTTP PUT uploads this option should not be used, since it may conflict with other options.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Used to set to uploading or downloading the end bytes. Translate to the end if not set.\n         * HTTP standard (RFC 7233 section 3.1) allows servers to ignore range requests.\n         * For HTTP PUT uploads this option should not be used, since it may conflict with other options.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        resumeTo?: number;\n        /**\n         * Support the application to pass in client certificates, allowing the server to verify the client's identity.\n         * @type {?ClientCert}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Support the application to pass in client certificates, allowing the server to verify the client's identity.\n         * @type {?ClientCert}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        clientCert?: ClientCert;\n        /**\n         * If this parameter is set, incoming DNS resolution server URL for the DoH server to use for name resolving.\n         * The parameter must be URL-encoded in the following format: \"https://host:port/path\".\n         * It MUST specify an HTTPS URL.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * If this parameter is set, incoming DNS resolution server URL for the DoH server to use for name resolving.\n         * The parameter must be URL-encoded in the following format: \"https://host:port/path\".\n         * It MUST specify an HTTPS URL.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        dnsOverHttps?: string;\n        /**\n         * If this parameter is set, use the specified DNS server for DNS resolution.\n         * Multiple DNS resolution servers can be set up, with a maximum of 3 servers.\n         * Only take the first three if there are more than three.\n         * @type {?Array<string>}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * If this parameter is set, use the specified DNS server for DNS resolution.\n         * Multiple DNS resolution servers can be set up, with a maximum of 3 servers.\n         * Only take the first three if there are more than three.\n         * @type {?Array<string>}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        dnsServers?: Array<string>;\n        /**\n         * The maximum limit of the response body. The default value is 5 * 1024 * 1024, in Byte.\n         * The maximum value is 100 * 1024 *1024, in Byte.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * The maximum limit of the response body. The default value is 5 * 1024 * 1024, in Byte.\n         * The maximum value is 100 * 1024 *1024, in Byte.\n         * @type {?number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        maxLimit?: number;\n        /**\n         * The data fields which is supported by the HTTP protocol to post\n         * forms and by the SMTP and IMAP protocols to provide\n         * the email data to send/upload.\n         * @type {?Array<MultiFormData>}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * The data fields which is supported by the HTTP protocol to post\n         * forms and by the SMTP and IMAP protocols to provide\n         * the email data to send/upload.\n         * @type {?Array<MultiFormData>}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        multiFormDataList?: Array<MultiFormData>;\n        /**\n         * Certificate pinning option. If server certificate's digest does not match\n         * {@link CertificatePinning.publicKeyHash}, request will fail.\n         * @type {?(CertificatePinning | CertificatePinning[])}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 12\n         */\n        certificatePinning?: CertificatePinning | CertificatePinning[];\n        /**\n         * Certificate authority(CA) which is used to verify the remote server's identification.\n         * @type {?RemoteValidation}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        remoteValidation?: RemoteValidation;\n        /**\n         * TLS option.\n         * @type {?TlsOptions}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        tlsOptions?: TlsOptions;\n        /**\n         * HTTP server authentication settings. No authentication by default.\n         * @type {?ServerAuthentication}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        serverAuthentication?: ServerAuthentication;\n        /**\n         * Address family option.\n         * @type {?AddressFamily}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 15\n         */\n        addressFamily?: AddressFamily;\n    }\n    /**\n     * HTTP server authentication.\n     * @typedef ServerAuthentication\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export interface ServerAuthentication {\n        /**\n         * Credential of server.\n         * @type {Credential}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        credential: Credential;\n        /**\n         * Authentication type of server. If not set, negotiate with the server.\n         * @type {?AuthenticationType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        authenticationType?: AuthenticationType;\n    }\n    /**\n     * TlsOptions.\n     * 'system': use system tls configuration.\n     * TlsOption: tls version range, and specify cipher suite.\n     * @typedef {'system' | TlsConfig}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsOptions = 'system' | TlsConfig;\n    /**\n     * Remote Validation Type.\n     * @typedef {'system' | 'skip'}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type RemoteValidation = 'system' | 'skip';\n    /**\n     * The server's authentication type.\n     * @typedef {'basic' | 'ntlm' | 'digest'}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type AuthenticationType = 'basic' | 'ntlm' | 'digest';\n    /**\n     * HTTP credential. Some server or proxy server need this.\n     * @typedef Credential\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export interface Credential {\n        /**\n         * Username of credential. Default is ''.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        username: string;\n        /**\n         * Password of credential. Default is ''.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        password: string;\n    }\n    /**\n     * TLS config.\n     * @typedef TlsConfig\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export interface TlsConfig {\n        /**\n         * Minimum version num of Tls protocol.\n         * @type {TlsVersion}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        tlsVersionMin: TlsVersion;\n        /**\n         * Maximum version num of Tls protocol.\n         * @type {TlsVersion}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        tlsVersionMax: TlsVersion;\n        /**\n         * CipherSuites, cipherSuits must match tsl version, otherswise will set all system-supported cipherSuits.\n         * @type {?CipherSuite[]}\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        cipherSuites?: CipherSuite[];\n    }\n    /**\n     * Cipher suite which TLS1.3+ support.\n     * The framework has a built-in preference order, but your choice will be recorded.\n     * @typedef {'TLS_AES_128_GCM_SHA256' | 'TLS_AES_256_GCM_SHA384' | 'TLS_CHACHA20_POLY1305_SHA256'}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV13SpecificCipherSuite = 'TLS_AES_128_GCM_SHA256' | 'TLS_AES_256_GCM_SHA384' | 'TLS_CHACHA20_POLY1305_SHA256';\n    /**\n     * Cipher suite which TLS1.2+ support.\n     * @typedef {'TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256' | 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384' | 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384' | 'TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256' | 'TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256' | 'TLS_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_RSA_WITH_AES_256_GCM_SHA384'}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV12SpecificCipherSuite = 'TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256' | 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384' | 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384' | 'TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256' | 'TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256' | 'TLS_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_RSA_WITH_AES_256_GCM_SHA384';\n    /**\n     * Cipher suite which TLS1.0+ support.\n     * @typedef {'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA' | 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA' | 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA' | 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA' | 'TLS_RSA_WITH_AES_128_CBC_SHA' | 'TLS_RSA_WITH_AES_256_CBC_SHA' | 'TLS_RSA_WITH_3DES_EDE_CBC_SHA'}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV10SpecificCipherSuite = 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA' | 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA' | 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA' | 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA' | 'TLS_RSA_WITH_AES_128_CBC_SHA' | 'TLS_RSA_WITH_AES_256_CBC_SHA' | 'TLS_RSA_WITH_3DES_EDE_CBC_SHA';\n    /**\n     * Include all cipher suite.\n     * @typedef {TlsV13CipherSuite}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type CipherSuite = TlsV13CipherSuite;\n    /**\n     * TLS1.3 cipher suite should include TLS1.2 cipher suite.\n     * @typedef {TlsV12CipherSuite | TlsV13SpecificCipherSuite}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV13CipherSuite = TlsV12CipherSuite | TlsV13SpecificCipherSuite;\n    /**\n     * TLS1.2 cipher suite should include TLS1.1 cipher suite.\n     * @typedef {TlsV11CipherSuite | TlsV12SpecificCipherSuite}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV12CipherSuite = TlsV11CipherSuite | TlsV12SpecificCipherSuite;\n    /**\n     * TLS1.1 cipher suite is same as TLS1.0 cipher suite.\n     * @typedef {TlsV10CipherSuite}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV11CipherSuite = TlsV10CipherSuite;\n    /**\n     * TLS1.0 cipher suite.\n     * @typedef {TlsV10SpecificCipherSuite}\n     * @syscap SystemCapability.Communication.NetStack\n     * @atomicservice\n     * @since 18\n     */\n    export type TlsV10CipherSuite = TlsV10SpecificCipherSuite;\n    /**\n   * Enum for Tls version\n   * @enum {number}\n   * @syscap SystemCapability.Communication.NetStack\n   * @atomicservice\n   * @since 18\n   */\n    export enum TlsVersion {\n        /**\n         * Tls version 1.0\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        TLS_V_1_0 = 4,\n        /**\n         * Tls version 1.1\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        TLS_V_1_1 = 5,\n        /**\n         * Tls version 1.2\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        TLS_V_1_2 = 6,\n        /**\n         * Tls version 1.3\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 18\n         */\n        TLS_V_1_3 = 7\n    }\n    /**\n     * Represents the properties of a form object.\n     * @interface MultiFormData\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 11\n     */\n    /**\n     * Represents the properties of a form object.\n     * @interface MultiFormData\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 12\n     */\n    export interface MultiFormData {\n        /**\n         * MIME name for the data field.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * MIME name for the data field.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        name: string;\n        /**\n         * Content type of the data field.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Content type of the data field.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        contentType: string;\n        /**\n         * Remote file name for the data field.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Remote file name for the data field.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        remoteFileName?: string;\n        /**\n         * This parameter sets a mime part's body content from memory data.\n         * @type {?(string | Object | ArrayBuffer)}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * This parameter sets a mime part's body content from memory data.\n         * @type {?(string | Object | ArrayBuffer)}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        data?: string | Object | ArrayBuffer;\n        /**\n         * This parameter sets a mime part's body content from the file's contents.\n         * This is an alternative to curl_mime_data for setting data to a mime part.\n         * If data is empty, filePath must be set.\n         * If data has a value, filePath does not take effect.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * This parameter sets a mime part's body content from the file's contents.\n         * This is an alternative to curl_mime_data for setting data to a mime part.\n         * If data is empty, filePath must be set.\n         * If data has a value, filePath does not take effect.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        filePath?: string;\n    }\n    /**\n     * Enum for certificate types\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 11\n     */\n    /**\n     * Enum for certificate types\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 12\n     */\n    export enum CertType {\n        /**\n         * PEM format certificate\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * PEM format certificate\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        PEM = 'PEM',\n        /**\n         * DER format certificate\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * DER format certificate\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        DER = 'DER',\n        /**\n         * P12 format certificate\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * P12 format certificate\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        P12 = 'P12'\n    }\n    /**\n     * The clientCert field of the client certificate, which includes 4 attributes:\n     * client certificate (cert), client certificate type (certType), certificate private key (key), and passphrase (keyPassword).\n     * @interface ClientCert\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 11\n     */\n    /**\n     * The clientCert field of the client certificate, which includes 4 attributes:\n     * client certificate (cert), client certificate type (certType), certificate private key (key), and passphrase (keyPassword).\n     * @interface ClientCert\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 12\n     */\n    export interface ClientCert {\n        /**\n         * The path to the client certificate file.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * The path to the client certificate file.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        certPath: string;\n        /**\n         * The type of the client certificate.\n         * @type {?CertType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * The type of the client certificate.\n         * @type {?CertType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        certType?: CertType;\n        /**\n         * The path of the client certificate private key file.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * The path of the client certificate private key file.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        keyPath: string;\n        /**\n         * Password required to use the client certificate private key.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Password required to use the client certificate private key.\n         * @type {?string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        keyPassword?: string;\n    }\n    /**\n     * Certificate pinning option.\n     * @interface CertificatePinning\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 12\n     */\n    interface CertificatePinning {\n        /**\n         * Public key hash.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 12\n         */\n        publicKeyHash: string;\n        /**\n         * Certificate public key hash algorithm.\n         * @type {'SHA-256'}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 12\n         */\n        hashAlgorithm: 'SHA-256';\n    }\n    /**\n     * <p>Defines an HTTP request task. Before invoking APIs provided by HttpRequest,\n     * you must call createHttp() to create an HttpRequestTask object.</p>\n     * @interface HttpRequest\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 6\n     */\n    /**\n     * <p>Defines an HTTP request task. Before invoking APIs provided by HttpRequest,\n     * you must call createHttp() to create an HttpRequestTask object.</p>\n     * @interface HttpRequest\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * <p>Defines an HTTP request task. Before invoking APIs provided by HttpRequest,\n     * you must call createHttp() to create an HttpRequestTask object.</p>\n     * @interface HttpRequest\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export interface HttpRequest {\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300997 - Cleartext traffic not permitted.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        request(url: string, callback: AsyncCallback<HttpResponse>): void;\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request..\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<HttpResponse> } callback - the callback of request.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300997 - Cleartext traffic not permitted.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        request(url: string, options: HttpRequestOptions, callback: AsyncCallback<HttpResponse>): void;\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<HttpResponse> } The promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<HttpResponse> } The promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<HttpResponse> } The promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<HttpResponse> } The promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Initiates an HTTP request to a given URL.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<HttpResponse> } The promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300997 - Cleartext traffic not permitted.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        request(url: string, options?: HttpRequestOptions): Promise<HttpResponse>;\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<number> } callback - Returns the callback of requestInStream {@link ResponseCode},\n         * should use on_headersReceive and on_dataReceive to get http response.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<number> } callback - Returns the callback of requestInStream {@link ResponseCode},\n         * should use on_headersReceive and on_dataReceive to get http response.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 12\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<number> } callback - Returns the callback of requestInStream {@link ResponseCode},\n         * should use on_headersReceive and on_dataReceive to get http response.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { AsyncCallback<number> } callback - Returns the callback of requestInStream {@link ResponseCode},\n         * should use on_headersReceive and on_dataReceive to get http response.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300997 - Cleartext traffic not permitted.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        requestInStream(url: string, callback: AsyncCallback<number>): void;\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<number> } callback - the callback of requestInStream.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<number> } callback - the callback of requestInStream.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 12\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<number> } callback - the callback of requestInStream.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } options - Optional parameters {@link HttpRequestOptions}.\n         * @param { AsyncCallback<number> } callback - the callback of requestInStream.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300997 - Cleartext traffic not permitted.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        requestInStream(url: string, options: HttpRequestOptions, callback: AsyncCallback<number>): void;\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<number> } the promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<number> } the promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 12\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<number> } the promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Initiates an HTTP request to a given URL, applicable to scenarios where http response supports streaming.\n         * @permission ohos.permission.INTERNET\n         * @param { string } url - URL for initiating an HTTP request.\n         * @param { HttpRequestOptions } [options] - Optional parameters {@link HttpRequestOptions}.\n         * @returns { Promise<number> } the promise returned by the function.\n         * @throws { BusinessError } 401 - Parameter error.\n         * @throws { BusinessError } 201 - Permission denied.\n         * @throws { BusinessError } 2300001 - Unsupported protocol.\n         * @throws { BusinessError } 2300003 - Invalid URL format or missing URL.\n         * @throws { BusinessError } 2300005 - Failed to resolve the proxy name.\n         * @throws { BusinessError } 2300006 - Failed to resolve the host name.\n         * @throws { BusinessError } 2300007 - Failed to connect to the server.\n         * @throws { BusinessError } 2300008 - Invalid server response.\n         * @throws { BusinessError } 2300009 - Access to the remote resource denied.\n         * @throws { BusinessError } 2300016 - Error in the HTTP2 framing layer.\n         * @throws { BusinessError } 2300018 - Transferred a partial file.\n         * @throws { BusinessError } 2300023 - Failed to write the received data to the disk or application.\n         * @throws { BusinessError } 2300025 - Upload failed.\n         * @throws { BusinessError } 2300026 - Failed to open or read local data from the file or application.\n         * @throws { BusinessError } 2300027 - Out of memory.\n         * @throws { BusinessError } 2300028 - Operation timeout.\n         * @throws { BusinessError } 2300047 - The number of redirections reaches the maximum allowed.\n         * @throws { BusinessError } 2300052 - The server returned nothing (no header or data).\n         * @throws { BusinessError } 2300055 - Failed to send data to the peer.\n         * @throws { BusinessError } 2300056 - Failed to receive data from the peer.\n         * @throws { BusinessError } 2300058 - Local SSL certificate error.\n         * @throws { BusinessError } 2300059 - The specified SSL cipher cannot be used.\n         * @throws { BusinessError } 2300060 - Invalid SSL peer certificate or SSH remote key.\n         * @throws { BusinessError } 2300061 - Invalid HTTP encoding format.\n         * @throws { BusinessError } 2300063 - Maximum file size exceeded.\n         * @throws { BusinessError } 2300070 - Remote disk full.\n         * @throws { BusinessError } 2300073 - Remote file already exists.\n         * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible.\n         * @throws { BusinessError } 2300078 - Remote file not found.\n         * @throws { BusinessError } 2300094 - Authentication error.\n         * @throws { BusinessError } 2300997 - Cleartext traffic not permitted.\n         * @throws { BusinessError } 2300998 - It is not allowed to access this domain.\n         * @throws { BusinessError } 2300999 - Internal error.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        requestInStream(url: string, options?: HttpRequestOptions): Promise<number>;\n        /**\n         * Destroys an HTTP request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Destroys an HTTP request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Destroys an HTTP request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        destroy(): void;\n        /**\n         * Registers an observer for HTTP Response Header events.\n         * @param { \"headerReceive\" } type - Indicates Event name.\n         * @param { AsyncCallback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         * @deprecated since 8\n         * @useinstead on_headersReceive\n         */\n        on(type: \"headerReceive\", callback: AsyncCallback<Object>): void;\n        /**\n         * Unregisters the observer for HTTP Response Header events.\n         * @param { \"headerReceive\" } type - Indicates Event name.\n         * @param { AsyncCallback<Object> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         * @deprecated since 8\n         * @useinstead off_headersReceive\n         */\n        off(type: \"headerReceive\", callback?: AsyncCallback<Object>): void;\n        /**\n         * Registers an observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 8\n         */\n        /**\n         * Registers an observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Registers an observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        on(type: \"headersReceive\", callback: Callback<Object>): void;\n        /**\n         * Unregisters the observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 8\n         */\n        /**\n         * Unregisters the observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Unregisters the observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        off(type: \"headersReceive\", callback?: Callback<Object>): void;\n        /**\n         * Registers a one-time observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 8\n         */\n        /**\n         * Registers a one-time observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Registers a one-time observer for HTTP Response Header events.\n         * @param { \"headersReceive\" } type - Indicates Event name.\n         * @param { Callback<Object> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        once(type: \"headersReceive\", callback: Callback<Object>): void;\n        /**\n         * Registers an observer for receiving HTTP Response data events continuously.\n         * @param { \"dataReceive\" } type - Indicates Event name.\n         * @param { Callback<ArrayBuffer> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Registers an observer for receiving HTTP Response data events continuously.\n         * @param { \"dataReceive\" } type - Indicates Event name.\n         * @param { Callback<ArrayBuffer> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Registers an observer for receiving HTTP Response data events continuously.\n         * @param { \"dataReceive\" } type - Indicates Event name.\n         * @param { Callback<ArrayBuffer> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        on(type: \"dataReceive\", callback: Callback<ArrayBuffer>): void;\n        /**\n         * Unregisters an observer for receiving HTTP Response data events continuously.\n         * @param { \"dataReceive\" } type - Indicates Event name.\n         * @param { Callback<ArrayBuffer> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Unregisters an observer for receiving HTTP Response data events continuously.\n         * @param { \"dataReceive\" } type - Indicates Event name.\n         * @param { Callback<ArrayBuffer> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Unregisters an observer for receiving HTTP Response data events continuously.\n         * @param { \"dataReceive\" } type - Indicates Event name.\n         * @param { Callback<ArrayBuffer> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        off(type: \"dataReceive\", callback?: Callback<ArrayBuffer>): void;\n        /**\n         * Registers an observer for receiving HTTP Response data ends events.\n         * @param { \"dataEnd\" } type - Indicates Event name.\n         * @param { Callback<void> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Registers an observer for receiving HTTP Response data ends events.\n         * @param { \"dataEnd\" } type - Indicates Event name.\n         * @param { Callback<void> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Registers an observer for receiving HTTP Response data ends events.\n         * @param { \"dataEnd\" } type - Indicates Event name.\n         * @param { Callback<void> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        on(type: \"dataEnd\", callback: Callback<void>): void;\n        /**\n         * Unregisters an observer for receiving HTTP Response data ends events.\n         * @param { \"dataEnd\" } type - Indicates Event name.\n         * @param { Callback<void> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Unregisters an observer for receiving HTTP Response data ends events.\n         * @param { \"dataEnd\" } type - Indicates Event name.\n         * @param { Callback<void> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @atomicservice\n         * @since 15\n         */\n        /**\n         * Unregisters an observer for receiving HTTP Response data ends events.\n         * @param { \"dataEnd\" } type - Indicates Event name.\n         * @param { Callback<void> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 18\n         */\n        off(type: \"dataEnd\", callback?: Callback<void>): void;\n        /**\n         * Registers an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<{ receiveSize: number, totalSize: number }> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Registers an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<DataReceiveProgressInfo> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Registers an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<DataReceiveProgressInfo> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Registers an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<DataReceiveProgressInfo> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        on(type: 'dataReceiveProgress', callback: Callback<DataReceiveProgressInfo>): void;\n        /**\n         * Unregisters an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<{ receiveSize: number, totalSize: number }> } [callback] - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 10\n         */\n        /**\n         * Unregisters an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<DataReceiveProgressInfo> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Unregisters an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<DataReceiveProgressInfo> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Unregisters an observer for progress of receiving HTTP Response data events.\n         * @param { 'dataReceiveProgress' } type - Indicates Event name.\n         * @param { Callback<DataReceiveProgressInfo> } callback - the callback used to return the result.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        off(type: 'dataReceiveProgress', callback?: Callback<DataReceiveProgressInfo>): void;\n        /**\n         * Registers an observer for progress of sendSize HTTP Response data events.\n         * @param { 'dataSendProgress' } type - Indicates Event name.\n         * @param { Callback<DataSendProgressInfo> } callback - the callback of on.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Registers an observer for progress of sendSize HTTP Response data events.\n         * @param { 'dataSendProgress' } type - Indicates Event name.\n         * @param { Callback<DataSendProgressInfo> } callback - the callback of on.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Registers an observer for progress of sendSize HTTP Response data events.\n         * @param { 'dataSendProgress' } type - Indicates Event name.\n         * @param { Callback<DataSendProgressInfo> } callback - the callback of on.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        on(type: 'dataSendProgress', callback: Callback<DataSendProgressInfo>): void;\n        /**\n         * Unregisters an observer for progress of sendSize HTTP Response data events.\n         * @param { 'dataSendProgress' } type - Indicates Event name.\n         * @param { Callback<DataSendProgressInfo> } [callback] - the callback of off.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Unregisters an observer for progress of sendSize HTTP Response data events.\n         * @param { 'dataSendProgress' } type - Indicates Event name.\n         * @param { Callback<DataSendProgressInfo> } [callback] - the callback of off.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Unregisters an observer for progress of sendSize HTTP Response data events.\n         * @param { 'dataSendProgress' } type - Indicates Event name.\n         * @param { Callback<DataSendProgressInfo> } [callback] - the callback of off.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        off(type: 'dataSendProgress', callback?: Callback<DataSendProgressInfo>): void;\n    }\n    /**\n     * Defines an HTTP request method.\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 6\n     */\n    /**\n     * Defines an HTTP request method.\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Defines an HTTP request method.\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export enum RequestMethod {\n        /**\n         * OPTIONS method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * OPTIONS method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * OPTIONS method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        OPTIONS = \"OPTIONS\",\n        /**\n         * GET method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * GET method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * GET method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        GET = \"GET\",\n        /**\n         * HEAD method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * HEAD method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * HEAD method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        HEAD = \"HEAD\",\n        /**\n         * POST method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * POST method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * POST method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        POST = \"POST\",\n        /**\n         * PUT method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * PUT method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * PUT method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        PUT = \"PUT\",\n        /**\n         * DELETE method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * DELETE method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * DELETE method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        DELETE = \"DELETE\",\n        /**\n         * TRACE method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * TRACE method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * TRACE method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        TRACE = \"TRACE\",\n        /**\n         * CONNECT method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * CONNECT method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * CONNECT method.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        CONNECT = \"CONNECT\"\n    }\n    /**\n     * Enumerates the response codes for an HTTP request.\n     * @enum {number}\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 6\n     */\n    /**\n     * Enumerates the response codes for an HTTP request.\n     * @enum {number}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Enumerates the response codes for an HTTP request.\n     * @enum {number}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export enum ResponseCode {\n        /**\n         * The request was successful. Typically used for GET and POST requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The request was successful. Typically used for GET and POST requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The request was successful. Typically used for GET and POST requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        OK = 200,\n        /**\n         * Successfully requested and created a new resource.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Successfully requested and created a new resource.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Successfully requested and created a new resource.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        CREATED,\n        /**\n         * The request has been accepted but has not been processed completely.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The request has been accepted but has not been processed completely.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The request has been accepted but has not been processed completely.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        ACCEPTED,\n        /**\n         * Unauthorized information. The request was successful.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Unauthorized information. The request was successful.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Unauthorized information. The request was successful.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        NOT_AUTHORITATIVE,\n        /**\n         * No content. The server successfully processed, but did not return content.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * No content. The server successfully processed, but did not return content.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * No content. The server successfully processed, but did not return content.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        NO_CONTENT,\n        /**\n         * Reset the content.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Reset the content.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Reset the content.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        RESET,\n        /**\n         * Partial content. The server successfully processed some GET requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Partial content. The server successfully processed some GET requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Partial content. The server successfully processed some GET requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        PARTIAL,\n        /**\n         * Multiple options.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Multiple options.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Multiple options.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        MULT_CHOICE = 300,\n        /**\n         * <p>Permanently move. The requested resource has been permanently moved to a new URI,\n         * and the returned information will include the new URI. The browser will automatically redirect to the new URI.</p>\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * <p>Permanently move. The requested resource has been permanently moved to a new URI,\n         * and the returned information will include the new URI. The browser will automatically redirect to the new URI.</p>\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * <p>Permanently move. The requested resource has been permanently moved to a new URI,\n         * and the returned information will include the new URI. The browser will automatically redirect to the new URI.</p>\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        MOVED_PERM,\n        /**\n         * Temporary movement.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Temporary movement.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Temporary movement.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        MOVED_TEMP,\n        /**\n         * View other addresses.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * View other addresses.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * View other addresses.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        SEE_OTHER,\n        /**\n         * Not modified.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Not modified.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Not modified.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        NOT_MODIFIED,\n        /**\n         * Using proxies.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Using proxies.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Using proxies.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        USE_PROXY,\n        /**\n         * The server cannot understand the syntax error error requested by the client.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server cannot understand the syntax error error requested by the client.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server cannot understand the syntax error error requested by the client.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        BAD_REQUEST = 400,\n        /**\n         * Request for user authentication.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Request for user authentication.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Request for user authentication.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        UNAUTHORIZED,\n        /**\n         * Reserved for future use.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Reserved for future use.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Reserved for future use.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        PAYMENT_REQUIRED,\n        /**\n         * The server understands the request from the requesting client, but refuses to execute it.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server understands the request from the requesting client, but refuses to execute it.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server understands the request from the requesting client, but refuses to execute it.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        FORBIDDEN,\n        /**\n         * The server was unable to find resources (web pages) based on the client's request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server was unable to find resources (web pages) based on the client's request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server was unable to find resources (web pages) based on the client's request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        NOT_FOUND,\n        /**\n         * The method in the client request is prohibited.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The method in the client request is prohibited.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The method in the client request is prohibited.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        BAD_METHOD,\n        /**\n         * The server is unable to complete the request based on the content characteristics requested by the client.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server is unable to complete the request based on the content characteristics requested by the client.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server is unable to complete the request based on the content characteristics requested by the client.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        NOT_ACCEPTABLE,\n        /**\n         * Request authentication of the proxy's identity.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Request authentication of the proxy's identity.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Request authentication of the proxy's identity.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        PROXY_AUTH,\n        /**\n         * The request took too long and timed out.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The request took too long and timed out.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The request took too long and timed out.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        CLIENT_TIMEOUT,\n        /**\n         * <p>The server may have returned this code when completing the client's PUT request,\n         * as there was a conflict when the server was processing the request.</p>\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * <p>The server may have returned this code when completing the client's PUT request,\n         * as there was a conflict when the server was processing the request.</p>\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * <p>The server may have returned this code when completing the client's PUT request,\n         * as there was a conflict when the server was processing the request.</p>\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        CONFLICT,\n        /**\n         * The resource requested by the client no longer exists.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The resource requested by the client no longer exists.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The resource requested by the client no longer exists.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        GONE,\n        /**\n         * The server is unable to process request information sent by the client without Content Length.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server is unable to process request information sent by the client without Content Length.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server is unable to process request information sent by the client without Content Length.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        LENGTH_REQUIRED,\n        /**\n         * The prerequisite for requesting information from the client is incorrect.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The prerequisite for requesting information from the client is incorrect.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The prerequisite for requesting information from the client is incorrect.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        PRECON_FAILED,\n        /**\n         * The request was rejected because the requested entity was too large for the server to process.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The request was rejected because the requested entity was too large for the server to process.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The request was rejected because the requested entity was too large for the server to process.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        ENTITY_TOO_LARGE,\n        /**\n         * The requested URI is too long (usually a URL) and the server cannot process it.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The requested URI is too long (usually a URL) and the server cannot process it.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The requested URI is too long (usually a URL) and the server cannot process it.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        REQ_TOO_LONG,\n        /**\n         * The server is unable to process the requested format.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server is unable to process the requested format.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server is unable to process the requested format.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        UNSUPPORTED_TYPE,\n        /**\n         * The server cannot process the requested data range.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 12\n         */\n        RANGE_NOT_SATISFIABLE,\n        /**\n         * Internal server error, unable to complete the request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Internal server error, unable to complete the request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Internal server error, unable to complete the request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        INTERNAL_ERROR = 500,\n        /**\n         * The server does not support the requested functionality and cannot complete the request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server does not support the requested functionality and cannot complete the request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server does not support the requested functionality and cannot complete the request.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        NOT_IMPLEMENTED,\n        /**\n         * The server acting as a gateway or proxy received an invalid request from the remote server.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server acting as a gateway or proxy received an invalid request from the remote server.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server acting as a gateway or proxy received an invalid request from the remote server.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        BAD_GATEWAY,\n        /**\n         * Due to overload or system maintenance, the server is temporarily unable to process client requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Due to overload or system maintenance, the server is temporarily unable to process client requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Due to overload or system maintenance, the server is temporarily unable to process client requests.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        UNAVAILABLE,\n        /**\n         * The server acting as a gateway or proxy did not obtain requests from the remote server in a timely manner.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The server acting as a gateway or proxy did not obtain requests from the remote server in a timely manner.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The server acting as a gateway or proxy did not obtain requests from the remote server in a timely manner.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        GATEWAY_TIMEOUT,\n        /**\n         * The version of the HTTP protocol requested by the server.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * The version of the HTTP protocol requested by the server.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The version of the HTTP protocol requested by the server.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        VERSION\n    }\n    /**\n     * Supported protocols.\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 9\n     */\n    /**\n     * Supported protocols.\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Supported protocols.\n     * @enum {string}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export enum HttpProtocol {\n        /**\n         * Protocol http1.1\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Protocol http1.1\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Protocol http1.1\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        HTTP1_1,\n        /**\n         * Protocol http2\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Protocol http2\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Protocol http2\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        HTTP2,\n        /**\n         * Protocol http3 for https only.\n         * Cause error if using http only or not supporting http3 on this device.\n         * Fallback to http2 or http1.1 if needed.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Protocol http3 for https only.\n         * Cause error if using http only or not supporting http3 on this device.\n         * Fallback to http2 or http1.1 if needed.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        HTTP3\n    }\n    /**\n     * Indicates the type of the returned data.\n     * @enum {number}\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 9\n     */\n    /**\n     * Indicates the type of the returned data.\n     * @enum {number}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Indicates the type of the returned data.\n     * @enum {number}\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export enum HttpDataType {\n        /**\n         * The returned type is string.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * The returned type is string.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The returned type is string.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        STRING,\n        /**\n         * The returned type is Object.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * The returned type is Object.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The returned type is Object.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        OBJECT = 1,\n        /**\n         * The returned type is ArrayBuffer.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * The returned type is ArrayBuffer.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * The returned type is ArrayBuffer.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        ARRAY_BUFFER = 2\n    }\n    /**\n     * Defines the response to an HTTP request.\n     * @interface HttpResponse\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 6\n     */\n    /**\n     * Defines the response to an HTTP request.\n     * @interface HttpResponse\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Defines the response to an HTTP request.\n     * @interface HttpResponse\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export interface HttpResponse {\n        /**\n         * result can be a string (API 6) or an ArrayBuffer(API 8). Object is deprecated from API 8.\n         * If {@link HttpRequestOptions#expectDataType} is set, the system preferentially returns this parameter.\n         * @type {string | Object | ArrayBuffer}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * result can be a string (API 6) or an ArrayBuffer(API 8). Object is deprecated from API 8.\n         * If {@link HttpRequestOptions#expectDataType} is set, the system preferentially returns this parameter.\n         * @type {string | Object | ArrayBuffer}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * result can be a string (API 6) or an ArrayBuffer(API 8). Object is deprecated from API 8.\n         * If {@link HttpRequestOptions#expectDataType} is set, the system preferentially returns this parameter.\n         * @type {string | Object | ArrayBuffer}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        result: string | Object | ArrayBuffer;\n        /**\n         * If the resultType is string, you can get result directly.\n         * If the resultType is Object, you can get result such as this: result['key'].\n         * If the resultType is ArrayBuffer, you can use ArrayBuffer to create the binary objects.\n         * @type {HttpDataType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * If the resultType is string, you can get result directly.\n         * If the resultType is Object, you can get result such as this: result['key'].\n         * If the resultType is ArrayBuffer, you can use ArrayBuffer to create the binary objects.\n         * @type {HttpDataType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * If the resultType is string, you can get result directly.\n         * If the resultType is Object, you can get result such as this: result['key'].\n         * If the resultType is ArrayBuffer, you can use ArrayBuffer to create the binary objects.\n         * @type {HttpDataType}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        resultType: HttpDataType;\n        /**\n         * Server status code.\n         * @type {ResponseCode | number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * Server status code.\n         * @type {ResponseCode | number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Server status code.\n         * @type {ResponseCode | number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        responseCode: ResponseCode | number;\n        /**\n         * All headers in the response from the server.\n         * @type {Object}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 6\n         */\n        /**\n         * All headers in the response from the server.\n         * @type {Object}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * All headers in the response from the server.\n         * @type {Object}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        header: Object;\n        /**\n         * Cookies returned by the server.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 8\n         */\n        /**\n         * Cookies returned by the server.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Cookies returned by the server.\n         * @type {string}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        cookies: string;\n        /**\n         * The time taken of various stages of HTTP request.\n         * @type {PerformanceTiming}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * The time taken of various stages of HTTP request.\n         * @type {PerformanceTiming}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        performanceTiming: PerformanceTiming;\n    }\n    /**\n     * Counting the time taken of various stages of HTTP request.\n     * @interface PerformanceTiming\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 11\n     */\n    /**\n     * Counting the time taken of various stages of HTTP request.\n     * @interface PerformanceTiming\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 12\n     */\n    export interface PerformanceTiming {\n        /**\n         * Time taken from startup to DNS resolution completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to DNS resolution completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        dnsTiming: number;\n        /**\n         * Time taken from startup to TCP connection completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to TCP connection completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        tcpTiming: number;\n        /**\n         * Time taken from startup to TLS connection completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to TLS connection completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        tlsTiming: number;\n        /**\n         * Time taken from startup to start sending the first byte, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to start sending the first byte, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        firstSendTiming: number;\n        /**\n         * Time taken from startup to receiving the first byte, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to receiving the first byte, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        firstReceiveTiming: number;\n        /**\n         * Time taken from startup to the completion of the request, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to the completion of the request, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        totalFinishTiming: number;\n        /**\n         * Time taken from startup to completion of all redirection steps, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from startup to completion of all redirection steps, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        redirectTiming: number;\n        /**\n         * Time taken from HTTP request to header completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from HTTP request to header completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        responseHeaderTiming: number;\n        /**\n         * Time taken from HTTP Request to body completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from HTTP Request to body completion, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        responseBodyTiming: number;\n        /**\n         * Time taken from HTTP Request to callback to the application, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Time taken from HTTP Request to callback to the application, in milliseconds.\n         * @type {number}\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        totalTiming: number;\n    }\n    /**\n     * This interface is used to obtain the progress information of file upload or download.\n     * @interface DataReceiveProgressInfo\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 11\n     */\n    /**\n     * This interface is used to obtain the progress information of file upload or download.\n     * @interface DataReceiveProgressInfo\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 12\n     */\n    /**\n     * This interface is used to obtain the progress information of file upload or download.\n     * @interface DataReceiveProgressInfo\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 15\n     */\n    export interface DataReceiveProgressInfo {\n        /**\n         * Number of data bytes received.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Number of data bytes received.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Number of data bytes received.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        receiveSize: number;\n        /**\n         * Total number of bytes to receive.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Total number of bytes to receive.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Total number of bytes to receive.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        totalSize: number;\n    }\n    /**\n     * This interface is used to monitor the progress of sending data.\n     * @interface DataSendProgressInfo\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 11\n     */\n    /**\n     * This interface is used to monitor the progress of sending data.\n     * @interface DataSendProgressInfo\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 12\n     */\n    /**\n     * This interface is used to monitor the progress of sending data.\n     * @interface DataSendProgressInfo\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 15\n     */\n    export interface DataSendProgressInfo {\n        /**\n         * Used to specify the data size to be sent.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Used to specify the data size to be sent.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Used to specify the data size to be sent.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        sendSize: number;\n        /**\n         * Total number of bytes to receive.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 11\n         */\n        /**\n         * Total number of bytes to receive.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 12\n         */\n        /**\n         * Total number of bytes to receive.\n         * @type { number }\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 15\n         */\n        totalSize: number;\n    }\n    /**\n     * Creates a default {@code HttpResponseCache} object to store the responses of HTTP access requests.\n     * @param { number } cacheSize - the size of cache(max value is 10MB), default is 10*1024*1024(10MB).\n     * @returns { HttpResponseCache } the HttpResponseCache of the createHttpResponseCache.\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 9\n     */\n    /**\n     * Creates a default {@code HttpResponseCache} object to store the responses of HTTP access requests.\n     * @param { number } cacheSize - the size of cache(max value is 10MB), default is 10*1024*1024(10MB).\n     * @returns { HttpResponseCache } the HttpResponseCache of the createHttpResponseCache.\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Creates a default {@code HttpResponseCache} object to store the responses of HTTP access requests.\n     * @param { number } cacheSize - the size of cache(max value is 10MB), default is 10*1024*1024(10MB).\n     * @returns { HttpResponseCache } the HttpResponseCache of the createHttpResponseCache.\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    function createHttpResponseCache(cacheSize?: number): HttpResponseCache;\n    /**\n     * Defines an object that stores the response to an HTTP request.\n     * @interface HttpResponseCache\n     * @syscap SystemCapability.Communication.NetStack\n     * @since 9\n     */\n    /**\n     * Defines an object that stores the response to an HTTP request.\n     * @interface HttpResponseCache\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Defines an object that stores the response to an HTTP request.\n     * @interface HttpResponseCache\n     * @syscap SystemCapability.Communication.NetStack\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    export interface HttpResponseCache {\n        /**\n         * Writes data in the cache to the file system so that all the cached data can be accessed in the next HTTP request.\n         * @param { AsyncCallback<void> } callback - the callback of flush.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Writes data in the cache to the file system so that all the cached data can be accessed in the next HTTP request.\n         * @param { AsyncCallback<void> } callback - the callback of flush.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Writes data in the cache to the file system so that all the cached data can be accessed in the next HTTP request.\n         * @param { AsyncCallback<void> } callback - the callback of flush.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        flush(callback: AsyncCallback<void>): void;\n        /**\n         * Writes data in the cache to the file system so that all the cached data can be accessed in the next HTTP request.\n         * @returns { Promise<void> } The promise returned by the flush.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Writes data in the cache to the file system so that all the cached data can be accessed in the next HTTP request.\n         * @returns { Promise<void> } The promise returned by the flush.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Writes data in the cache to the file system so that all the cached data can be accessed in the next HTTP request.\n         * @returns { Promise<void> } The promise returned by the flush.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        flush(): Promise<void>;\n        /**\n         * Disables a cache and deletes the data in it.\n         * @param { AsyncCallback<void> } callback - the callback of delete.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Disables a cache and deletes the data in it.\n         * @param { AsyncCallback<void> } callback - the callback of delete.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Disables a cache and deletes the data in it.\n         * @param { AsyncCallback<void> } callback - the callback of delete.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        delete(callback: AsyncCallback<void>): void;\n        /**\n         * Disables a cache and deletes the data in it.\n         * @returns { Promise<void> } The promise returned by the delete.\n         * @syscap SystemCapability.Communication.NetStack\n         * @since 9\n         */\n        /**\n         * Disables a cache and deletes the data in it.\n         * @returns { Promise<void> } The promise returned by the delete.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @since 10\n         */\n        /**\n         * Disables a cache and deletes the data in it.\n         * @returns { Promise<void> } The promise returned by the delete.\n         * @syscap SystemCapability.Communication.NetStack\n         * @crossplatform\n         * @atomicservice\n         * @since 11\n         */\n        delete(): Promise<void>;\n    }\n}\nexport default http;\n",
}
export default FILE;